In a disk drive environment, command queuing improves performance by sequentially executing many entries in a queue without firmware intervention. Because of the pipelined nature of queued commands, when data from the queued commands is being sent to the host, the queue logic may already be fetching data for the next queue entry. If an error occurs in the transmission, the logic would have to accurately back track and restart from the point where data was last known to have been successfully sent to the host. Such a restart operation is made more difficult when the queued commands refer to the data using logical blocks.